package com.dev.springBootDemo.reflection;

/**
 * @author zhumq
 * @date 2024/7/1 20:27
 */
public class testReflection04 {
    public static void main(String[] args) {
        A a = new A();
        System.out.println(A.m); // 100


        /**
         * 1.加载到内存，会产生一个类对应的class对象
         * 2.链接，链接结束后 m = 0
         * 3.初始化 (静态方法合并，顺序执行)
         *      <clinit>(){
         *          System.out.println("A类静态代码块初始化");
         *          m = 300;
         *          m = 100;
         *      }
         *   m =100
         * 4.System.out.println("A类的无参构造初始化");
         * 5.System.out.println(A.m) // 100
         */
    }
}

class A {
    static {
        System.out.println("A类静态代码块初始化");
        m = 300;
    }
    static int m = 100;
    public A() {
        System.out.println("A类的无参构造初始化");
    }
}